package com.cap.dreamcircle.Model;

import com.cap.dreamcircle.Model.Bean.AnonymousResponseBean;
import com.cap.dreamcircle.Model.Bean.BaseBean;
import com.cap.dreamcircle.Model.Bean.UserInfoBean;

import java.util.HashMap;
import java.util.Map;

import okhttp3.RequestBody;
import rx.Observable;

/**
 * Created by liucxu on 2017/7/11.
 */

public interface IUserModel {
    Observable<AnonymousResponseBean> CreateAnonymousUser(HashMap<String,String> params);
    Observable<BaseBean> GetVerificationCode(HashMap<String,String> params);
    Observable<AnonymousResponseBean> CreatePhoneUserAccount(HashMap<String,String> params);
    Observable<BaseBean> GetVerificationCodeLogin(HashMap<String, String> params);
    Observable<AnonymousResponseBean> PhoneLogin(HashMap<String,String> params);
    Observable<BaseBean> CompleteUserInfo(Map<String, RequestBody> params);
    Observable<BaseBean> BindUserPhone(HashMap<String,String> params);
    Observable<BaseBean> BindUserPhoneTest(HashMap<String,String> params);
    Observable<BaseBean> GetVerificationCodeBind(HashMap<String, String> params);
    Observable<AnonymousResponseBean> wechatLogin(Map<String, RequestBody> params);
    Observable<BaseBean> BindWechat(String unionId);
    Observable<BaseBean> TestTokenValidate();
    Observable<UserInfoBean> RequestUserInfo();
    Observable<BaseBean> CountKey(String key);
    Observable<BaseBean> TestBindWechat(String wxUinonId);
    Observable<BaseBean> DoBindWechat(Map<String, RequestBody> params);
    Observable<BaseBean> BindVerificationCode(String mobile);
    Observable<BaseBean> BindPhoneWithCode(String mobile,String verification);
}
